<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
<script>
    // 如果属性在实例对象中不存在，会去原型对象中进行查找，如果最终找不到获取的值为undefined
    // 原型对象是共享的，可以通过实例的__proto__来访问原型对象
    // 1- 隐式创建一个对象
    // 2- 将this指向到该对象
    // 3- 执行构造函数
    // 4- 将this隐式返回
    function Box(){
		this.a = 1;// 实例属性a
		this.b = 2;// 实例属性b
    }
	Box.prototype.arr = [1,2,3,4];
	const obj = new Box();
	const obj2 = new Box();
	// console.log(obj.__proto__===Box.prototype,obj2.__proto__===Box.prototype);
	// console.log(obj.__proto__ === obj2.__proto__)
	// console.log(obj,obj.a,obj.b,obj.arr,obj.lala);
    obj2.arr.push(100);
	console.log(obj.arr);// [1,2,3,4,100]
</script>
</html>